<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.5"/>
<title>dp12txss: xdptxss_intr_example.c File Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript">
  $(document).ready(initResizable);
  $(window).load(resizeHeight);
</script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="HTML_custom.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td id="projectlogo"><img alt="Logo" src="xlogo_bg.png"/></td>
  <td style="padding-left: 0.5em;">
   <div id="projectname">dp12txss
   </div>
   <div id="projectbrief">Vitis Drivers API Documentation</div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.5 -->
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Overview</span></a></li>
      <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
      <li><a href="globals.html"><span>APIs</span></a></li>
      <li><a href="files.html"><span>File&#160;List</span></a></li>
    </ul>
  </div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
      <div id="nav-sync" class="sync"></div>
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;" 
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
$(document).ready(function(){initNavTree('xdptxss__intr__example_8c.html','');});
</script>
<div id="doc-content">
<div class="header">
  <div class="summary">
<a href="#func-members">Functions</a>  </div>
  <div class="headertitle">
<div class="title">xdptxss_intr_example.c File Reference</div>  </div>
</div><!--header-->
<div class="contents">
<a name="details" id="details"></a><h2 class="groupheader">Overview</h2>
<div class="textblock"><p>This file contains a design example using the <a class="el" href="struct_x_dp_tx_ss.html" title="The DisplayPort TX Subsystem driver instance data. ">XDpTxSs</a> driver in single stream (SST) transport or multi-stream transport (MST) mode with interrupts. </p>
<p>Upon Hot-Plug-Detect (HPD - DisplayPort cable is plugged/unplugged or the monitor is turned on/off), DisplayPort TX Subsystem will read the capability of RX device and re-start the subsystem.</p>
<dl class="section note"><dt>Note</dt><dd>This example requires an interrupt controller connected to the processor and the DisplayPort TX Subsystem HIP in the system. For this example to display output, the user need to implement initialization of the system (DpTxSs_PlatformInit) and after DisplayPort TX subsystem start (XDpTxSs_Start) is complete, implement configuration of the video stream source in order to provide the DisplayPort TX Subsystem HIP input. The functions DpTxSs_PlatformInit and DpTxSs_StreamSrc are declared and are left up to the user implement.</dd></dl>
<pre>
MODIFICATION HISTORY:</pre><pre>Ver  Who Date     Changes
</p>
<hr/>
<p>
1.00 sha 07/01/15 Initial release.
2.00 sha 09/28/15 Added HDCP, Timer Counter interrupt handier registration.
                  Added set MSA callback.
4.1  ms  01/23/17 Modified xil_printf statement in main function to
                  ensure that "Successfully ran" and "Failed" strings
                  are available in all examples. This is a fix for
                  CR-965028.</pre><pre></pre> </div><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:a33cda38a440b9d58b40394074c0587ec"><td class="memItemLeft" align="right" valign="top">u32&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xdptxss__intr__example_8c.html#a33cda38a440b9d58b40394074c0587ec">DpTxSs_IntrExample</a> (u16 DeviceId)</td></tr>
<tr class="memdesc:a33cda38a440b9d58b40394074c0587ec"><td class="mdescLeft">&#160;</td><td class="mdescRight">This function is the main entry point for the interrupt example using the <a class="el" href="struct_x_dp_tx_ss.html" title="The DisplayPort TX Subsystem driver instance data. ">XDpTxSs</a> driver.  <a href="#a33cda38a440b9d58b40394074c0587ec">More...</a><br/></td></tr>
<tr class="separator:a33cda38a440b9d58b40394074c0587ec"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a77566cbc37f750518218986d3d37c4f4"><td class="memItemLeft" align="right" valign="top">u32&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xdptxss__intr__example_8c.html#a77566cbc37f750518218986d3d37c4f4">DpTxSs_PlatformInit</a> (void)</td></tr>
<tr class="memdesc:a77566cbc37f750518218986d3d37c4f4"><td class="mdescLeft">&#160;</td><td class="mdescRight">This function initialize required platform-specifc peripherals.  <a href="#a77566cbc37f750518218986d3d37c4f4">More...</a><br/></td></tr>
<tr class="separator:a77566cbc37f750518218986d3d37c4f4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a44da0aaa5e8ac565866c10f164974558"><td class="memItemLeft" align="right" valign="top">u32&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xdptxss__intr__example_8c.html#a44da0aaa5e8ac565866c10f164974558">DpTxSs_StreamSrc</a> (u8 VerticalSplit)</td></tr>
<tr class="memdesc:a44da0aaa5e8ac565866c10f164974558"><td class="mdescLeft">&#160;</td><td class="mdescRight">This function setup stream source to input DisplayPort TX Subsystem.  <a href="#a44da0aaa5e8ac565866c10f164974558">More...</a><br/></td></tr>
<tr class="separator:a44da0aaa5e8ac565866c10f164974558"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a580b1ce673353caf117185940232783e"><td class="memItemLeft" align="right" valign="top">u32&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xdptxss__intr__example_8c.html#a580b1ce673353caf117185940232783e">DpTxSs_SetupIntrSystem</a> (void)</td></tr>
<tr class="memdesc:a580b1ce673353caf117185940232783e"><td class="mdescLeft">&#160;</td><td class="mdescRight">This function sets up the interrupt system so interrupts can occur for the DisplayPort TX Subsystem core.  <a href="#a580b1ce673353caf117185940232783e">More...</a><br/></td></tr>
<tr class="separator:a580b1ce673353caf117185940232783e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a43bfef1afb72a74517979ca8d98b62c3"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xdptxss__intr__example_8c.html#a43bfef1afb72a74517979ca8d98b62c3">DpTxSs_HpdEventHandler</a> (void *InstancePtr)</td></tr>
<tr class="memdesc:a43bfef1afb72a74517979ca8d98b62c3"><td class="mdescLeft">&#160;</td><td class="mdescRight">This function is called when a Hot-Plug-Detect (HPD) event is received by the DisplayPort TX Subsystem core.  <a href="#a43bfef1afb72a74517979ca8d98b62c3">More...</a><br/></td></tr>
<tr class="separator:a43bfef1afb72a74517979ca8d98b62c3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad9678951bcf73b3ab52d7dbb5243f531"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xdptxss__intr__example_8c.html#ad9678951bcf73b3ab52d7dbb5243f531">DpTxSs_HpdPulseHandler</a> (void *InstancePtr)</td></tr>
<tr class="memdesc:ad9678951bcf73b3ab52d7dbb5243f531"><td class="mdescLeft">&#160;</td><td class="mdescRight">This function is called when a Hot-Plug-Detect (HPD) pulse is received by the DisplayPort TX Subsystem core.  <a href="#ad9678951bcf73b3ab52d7dbb5243f531">More...</a><br/></td></tr>
<tr class="separator:ad9678951bcf73b3ab52d7dbb5243f531"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af293d89e09d0a00085735c924122d386"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xdptxss__intr__example_8c.html#af293d89e09d0a00085735c924122d386">DpTxSs_LaneCountChangeHandler</a> (void *InstancePtr)</td></tr>
<tr class="memdesc:af293d89e09d0a00085735c924122d386"><td class="mdescLeft">&#160;</td><td class="mdescRight">This function is called when the lane count change interrupt occurs.  <a href="#af293d89e09d0a00085735c924122d386">More...</a><br/></td></tr>
<tr class="separator:af293d89e09d0a00085735c924122d386"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aaedcf13238d73f04db2a892a679c6729"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xdptxss__intr__example_8c.html#aaedcf13238d73f04db2a892a679c6729">DpTxSs_LinkRateChangeHandler</a> (void *InstancePtr)</td></tr>
<tr class="memdesc:aaedcf13238d73f04db2a892a679c6729"><td class="mdescLeft">&#160;</td><td class="mdescRight">This function is called when the link rate change interrupt occurs.  <a href="#aaedcf13238d73f04db2a892a679c6729">More...</a><br/></td></tr>
<tr class="separator:aaedcf13238d73f04db2a892a679c6729"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac731a8ba27681b3e75e646a094045a2f"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xdptxss__intr__example_8c.html#ac731a8ba27681b3e75e646a094045a2f">DpTxSs_PeVsAdjustHandler</a> (void *InstancePtr)</td></tr>
<tr class="memdesc:ac731a8ba27681b3e75e646a094045a2f"><td class="mdescLeft">&#160;</td><td class="mdescRight">This function is called when the pre-emphasis and voltage swing adjustment interrupt occurs.  <a href="#ac731a8ba27681b3e75e646a094045a2f">More...</a><br/></td></tr>
<tr class="separator:ac731a8ba27681b3e75e646a094045a2f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3a2883bf5d4c657c2e77c0a688e9e143"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xdptxss__intr__example_8c.html#a3a2883bf5d4c657c2e77c0a688e9e143">DpTxSs_MsaHandler</a> (void *InstancePtr)</td></tr>
<tr class="memdesc:a3a2883bf5d4c657c2e77c0a688e9e143"><td class="mdescLeft">&#160;</td><td class="mdescRight">This callback is called when RX MSA values to be copied into TX MSA.  <a href="#a3a2883bf5d4c657c2e77c0a688e9e143">More...</a><br/></td></tr>
<tr class="separator:a3a2883bf5d4c657c2e77c0a688e9e143"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae66f6b31b5ad750f1fe042a706a4e3d4"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xdptxss__intr__example_8c.html#ae66f6b31b5ad750f1fe042a706a4e3d4">main</a> ()</td></tr>
<tr class="memdesc:ae66f6b31b5ad750f1fe042a706a4e3d4"><td class="mdescLeft">&#160;</td><td class="mdescRight">This is the main function for <a class="el" href="struct_x_dp_tx_ss.html" title="The DisplayPort TX Subsystem driver instance data. ">XDpTxSs</a> interrupt example.  <a href="#ae66f6b31b5ad750f1fe042a706a4e3d4">More...</a><br/></td></tr>
<tr class="separator:ae66f6b31b5ad750f1fe042a706a4e3d4"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<h2 class="groupheader">Function Documentation</h2>
<a class="anchor" id="a43bfef1afb72a74517979ca8d98b62c3"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void DpTxSs_HpdEventHandler </td>
          <td>(</td>
          <td class="paramtype">void *&#160;</td>
          <td class="paramname"><em>InstancePtr</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>This function is called when a Hot-Plug-Detect (HPD) event is received by the DisplayPort TX Subsystem core. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">InstancePtr</td><td>is a pointer to the <a class="el" href="struct_x_dp_tx_ss.html" title="The DisplayPort TX Subsystem driver instance data. ">XDpTxSs</a> instance.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>None.</dd></dl>
<dl class="section note"><dt>Note</dt><dd>Use the XDpTxSs_SetCallback driver function to set this function as the handler for HPD event. </dd></dl>

<p>References <a class="el" href="struct_x_dp_tx_ss.html#a9469d77acb349ab8c6672fb9338ea5fc">XDpTxSs::Config</a>, <a class="el" href="struct_x_dp_tx_ss.html#a5191770fa4cf23ff0d1ed4c9c367af94">XDpTxSs::DpPtr</a>, <a class="el" href="struct_x_dp_tx_ss___config.html#abbbf67cd9c07fcd8b130f1ef48b514cb">XDpTxSs_Config::MstSupport</a>, <a class="el" href="group__dptxss.html#gac2a666497cc955666ea6c660dd273f62">XDPTXSS_INTERRUPT_MASK</a>, <a class="el" href="group__dptxss.html#gae787a2608eff783b770b6c572ec9ba4e">XDPTXSS_INTERRUPT_MASK_HPD_EVENT_MASK</a>, <a class="el" href="group__dptxss.html#ga1f42e1c338b821077fae744620a663d2">XDPTXSS_INTERRUPT_MASK_HPD_PULSE_DETECTED_MASK</a>, <a class="el" href="group__dptxss.html#ga84de784579ceabd123fdf1136dde0c7d">XDpTxSs_IsConnected()</a>, <a class="el" href="group__dptxss.html#ga00e2cce4e9b8511ed14e9f9a30790175">XDpTxSs_IsMstCapable()</a>, <a class="el" href="group__dptxss.html#ga53f6015a16b096337cc3e1f18c2acf71">XDpTxSs_ReadReg</a>, and <a class="el" href="group__dptxss.html#gab83e25867875aa95d08d116a07f0807a">XDpTxSs_WriteReg</a>.</p>

</div>
</div>
<a class="anchor" id="ad9678951bcf73b3ab52d7dbb5243f531"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void DpTxSs_HpdPulseHandler </td>
          <td>(</td>
          <td class="paramtype">void *&#160;</td>
          <td class="paramname"><em>InstancePtr</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>This function is called when a Hot-Plug-Detect (HPD) pulse is received by the DisplayPort TX Subsystem core. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">InstancePtr</td><td>is a pointer to the <a class="el" href="struct_x_dp_tx_ss.html" title="The DisplayPort TX Subsystem driver instance data. ">XDpTxSs</a> instance.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>None.</dd></dl>
<dl class="section note"><dt>Note</dt><dd>Use the XDpTxSs_SetCallback driver function to set this function as the handler for HPD pulse. </dd></dl>

<p>References <a class="el" href="struct_x_dp_tx_ss___usr_opt.html#a1a6410ddf9e096e4eacb26a5f6ad14fe">XDpTxSs_UsrOpt::MstSupport</a>, and <a class="el" href="struct_x_dp_tx_ss.html#a1dccdffc912017829be08ef808b5923f">XDpTxSs::UsrOpt</a>.</p>

</div>
</div>
<a class="anchor" id="a33cda38a440b9d58b40394074c0587ec"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">u32 DpTxSs_IntrExample </td>
          <td>(</td>
          <td class="paramtype">u16&#160;</td>
          <td class="paramname"><em>DeviceId</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>This function is the main entry point for the interrupt example using the <a class="el" href="struct_x_dp_tx_ss.html" title="The DisplayPort TX Subsystem driver instance data. ">XDpTxSs</a> driver. </p>
<p>This function will set up the system with interrupts and set up Hot-Plug-Event (HPD) handlers.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">DeviceId</td><td>is the unique device ID of the DisplayPort TX Subsystem core.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd><ul>
<li>XST_FAILURE if the system setup failed.</li>
<li>XST_SUCCESS should never return since this function, if setup was successful, is blocking.</li>
</ul>
</dd></dl>
<dl class="section note"><dt>Note</dt><dd>If system setup was successful, this function is blocking in order to illustrate interrupt handling taking place for HPD events. </dd></dl>

<p>References <a class="el" href="struct_x_dp_tx_ss___config.html#aee6c9866e032c7e70e399bc0dac84aa6">XDpTxSs_Config::BaseAddress</a>, <a class="el" href="xdptxss__debug__example_8c.html#a77566cbc37f750518218986d3d37c4f4">DpTxSs_PlatformInit()</a>, <a class="el" href="xdptxss__intr__example_8c.html#a580b1ce673353caf117185940232783e">DpTxSs_SetupIntrSystem()</a>, <a class="el" href="struct_x_dp_tx_ss___usr_opt.html#a1a6410ddf9e096e4eacb26a5f6ad14fe">XDpTxSs_UsrOpt::MstSupport</a>, <a class="el" href="struct_x_dp_tx_ss.html#a1dccdffc912017829be08ef808b5923f">XDpTxSs::UsrOpt</a>, <a class="el" href="group__dptxss.html#gafb7b3b467a12177fb0c8053f4b7d70a1">XDpTxSs_CfgInitialize()</a>, and <a class="el" href="group__dptxss.html#ga08363492b9842c06051fc2d5e8809f86">XDpTxSs_LookupConfig()</a>.</p>

<p>Referenced by <a class="el" href="xdptxss__intr__example_8c.html#ae66f6b31b5ad750f1fe042a706a4e3d4">main()</a>.</p>

</div>
</div>
<a class="anchor" id="af293d89e09d0a00085735c924122d386"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void DpTxSs_LaneCountChangeHandler </td>
          <td>(</td>
          <td class="paramtype">void *&#160;</td>
          <td class="paramname"><em>InstancePtr</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>This function is called when the lane count change interrupt occurs. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">InstancePtr</td><td>is a pointer to the <a class="el" href="struct_x_dp_tx_ss.html" title="The DisplayPort TX Subsystem driver instance data. ">XDpTxSs</a> instance.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>None.</dd></dl>
<dl class="section note"><dt>Note</dt><dd>Use the XDpTxSs_SetCallback driver function to set this function as the handler for lane count change. </dd></dl>

</div>
</div>
<a class="anchor" id="aaedcf13238d73f04db2a892a679c6729"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void DpTxSs_LinkRateChangeHandler </td>
          <td>(</td>
          <td class="paramtype">void *&#160;</td>
          <td class="paramname"><em>InstancePtr</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>This function is called when the link rate change interrupt occurs. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">InstancePtr</td><td>is a pointer to the <a class="el" href="struct_x_dp_tx_ss.html" title="The DisplayPort TX Subsystem driver instance data. ">XDpTxSs</a> instance.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>None.</dd></dl>
<dl class="section note"><dt>Note</dt><dd>Use the XDpTxSs_SetCallback driver function to set this function as the handler for link rate change. </dd></dl>

</div>
</div>
<a class="anchor" id="a3a2883bf5d4c657c2e77c0a688e9e143"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void DpTxSs_MsaHandler </td>
          <td>(</td>
          <td class="paramtype">void *&#160;</td>
          <td class="paramname"><em>InstancePtr</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>This callback is called when RX MSA values to be copied into TX MSA. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">InstancePtr</td><td>is a pointer to the <a class="el" href="struct_x_dp_tx_ss.html" title="The DisplayPort TX Subsystem driver instance data. ">XDpTxSs</a> instance.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>None.</dd></dl>
<dl class="section note"><dt>Note</dt><dd>Use the XDpTxSs_SetCallback driver function to set this function as the handler MSA copy. </dd></dl>

</div>
</div>
<a class="anchor" id="ac731a8ba27681b3e75e646a094045a2f"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void DpTxSs_PeVsAdjustHandler </td>
          <td>(</td>
          <td class="paramtype">void *&#160;</td>
          <td class="paramname"><em>InstancePtr</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>This function is called when the pre-emphasis and voltage swing adjustment interrupt occurs. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">InstancePtr</td><td>is a pointer to the <a class="el" href="struct_x_dp_tx_ss.html" title="The DisplayPort TX Subsystem driver instance data. ">XDpTxSs</a> instance.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>None.</dd></dl>
<dl class="section note"><dt>Note</dt><dd>Use the XDpTxSs_SetCallback driver function to set this function as the handler for pre-emphasis and voltage swing adjust. </dd></dl>

</div>
</div>
<a class="anchor" id="a77566cbc37f750518218986d3d37c4f4"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">u32 DpTxSs_PlatformInit </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>This function initialize required platform-specifc peripherals. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">None.</td><td></td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd><ul>
<li>XST_SUCCESS if required peripherals are initialized and configured successfully.</li>
<li>XST_FAILURE, otherwise.</li>
</ul>
</dd></dl>
<dl class="section note"><dt>Note</dt><dd>None. </dd></dl>

</div>
</div>
<a class="anchor" id="a580b1ce673353caf117185940232783e"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">u32 DpTxSs_SetupIntrSystem </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>This function sets up the interrupt system so interrupts can occur for the DisplayPort TX Subsystem core. </p>
<p>The function is application-specific since the actual system may or may not have an interrupt controller. The DPTX Subsystem core could be directly connected to a processor without an interrupt controller. The user should modify this function to fit the application.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">None</td><td></td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd><ul>
<li>XST_SUCCESS if interrupt setup was successful.</li>
<li>A specific error code defined in "xstatus.h" if an error occurs.</li>
</ul>
</dd></dl>
<dl class="section note"><dt>Note</dt><dd>None. </dd></dl>

<p>Referenced by <a class="el" href="xdptxss__intr__example_8c.html#a33cda38a440b9d58b40394074c0587ec">DpTxSs_IntrExample()</a>.</p>

</div>
</div>
<a class="anchor" id="a44da0aaa5e8ac565866c10f164974558"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">u32 DpTxSs_StreamSrc </td>
          <td>(</td>
          <td class="paramtype">u8&#160;</td>
          <td class="paramname"><em>VerticalSplit</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>This function setup stream source to input DisplayPort TX Subsystem. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">VerticalSplit</td><td>specifies whether to split video frame vertically into two different vertical halves.<ul>
<li>1 = Vertically split input frame</li>
<li>0 = No vertically split input frame.</li>
</ul>
</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd><ul>
<li>XST_SUCCESS if stream source is configured successfully.</li>
<li>XST_FAILURE, otherwise.</li>
</ul>
</dd></dl>
<dl class="section note"><dt>Note</dt><dd>None. </dd></dl>

</div>
</div>
<a class="anchor" id="ae66f6b31b5ad750f1fe042a706a4e3d4"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int main </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>This is the main function for <a class="el" href="struct_x_dp_tx_ss.html" title="The DisplayPort TX Subsystem driver instance data. ">XDpTxSs</a> interrupt example. </p>
<p>If the DpTxSs_IntrExample function which sets up the system succeeds, this function will wait for the interrupts. Once a connection event or pulse is detected, DpTxSs will RX device capabilities and re-start the subsystem.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">None.</td><td></td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd><ul>
<li>XST_FAILURE if the interrupt example was unsuccessful.</li>
</ul>
</dd></dl>
<dl class="section note"><dt>Note</dt><dd>Unless setup failed, main will never return since DpTxSs_IntrExample is blocking (it is waiting on interrupts for Hot-Plug-Detect (HPD) events. </dd></dl>

<p>References <a class="el" href="xdptxss__intr__example_8c.html#a33cda38a440b9d58b40394074c0587ec">DpTxSs_IntrExample()</a>.</p>

</div>
</div>
</div><!-- contents -->
</div><!-- doc-content -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
	<p class="footer">&copy; Copyright 2015-2022 Xilinx, Inc. All Rights Reserved.</p>
	<p class="footer">&copy; Copyright 2022-2023 Advanced Micro Devices, Inc. All Rights Reserved.</p>
</div>
</body>
</html>
